package main

import (
	"fmt"
	"time"
)

// 写一个通道证明它的阻塞性，开启一个协程接收通道的数据，持续 15 秒，然后给通道放入一个值。在不同的阶段打印消息并观察输出。

func main() {
	ch := make(chan int)
	go func() {
		time.Sleep(15e9)
		// 存在接收者之后, 才能放入值
		x := <-ch
		fmt.Println("received int from chan: ", x)
	}()

	fmt.Println("send int 10 to chan")
	// 一直阻塞直到接收者可用
	ch <- 10
	fmt.Println("sended")
}
